package com.c2c.service;

import com.c2c.po.Comment;

import java.util.List;

public interface CommentService {

    /**
     * 查看所有的评论
     * @return              所有评论
     */
    List<Comment> findAllComment();

    /**
     * 根据用户Id查询其评论
     * @param userAccount  用户ID
     * @return             用户评论
     */
    List<Comment> findByUserAccount(int userAccount);

    /**
     * 根据商品查询所有评论
     * @param goodsId      商品ID
     * @return             返回查找到的内容
     */
    List<Comment> findByGoodsId(int goodsId);

    /**
     * 根据评论编号更改评论内容   此处应该是用户可调用
     * @param comment     封装内容
     */
    void updateContentByCommentId(Comment comment);

    /**
     * 根据评论编号更改评论状态   此处应该是管理员可调用
     * @param comment     封装内容
     */
    void updateStateByCommentId(Comment comment, int commentState);

    /**
     * 根据评论Id删除对应评论，此方法理论只能由用户调用  删除自己的评论
     * @param commentId     评论ID
     */
    void deleteByCommentId(int commentId);

    /**
     * 新增评论
     * @param comment    封装内容
     */
    void insertCommentId(Comment comment);
}
